package com.mes.cloud.entity;

import lombok.Data;

import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.Table;
import java.io.Serializable;
import java.util.Date;

/**
 * 系统菜单
 * 
 * @author wxm
 * @email xiaomin.wu1@pactera.com
 * @version 2019-07-30 13:55:22
 */
@Data
@Table(name = "sys_menu")
public class SysMenu implements Serializable {
    private static final long serialVersionUID=1L;
   /**
    * 主键
    */
	@Id
	private String id;
   /**
    * 父节点ID
    */
	@Column(name = "parent_group_id")
	private String parentGroupId;

	/**
	 * 父节点ID
	 */
	@Column(name = "parent_id")
	private String parentId;
   /**
    * 编码
    */
	@Column(name = "code")
	private String code;

	/**
	 * key
	 */
	@Column(name = "sn")
	private String sn;

   /**
    * 菜单名称
    */
	@Column(name = "name_cn")
	private String nameCn;

	/**
	 * 家族目录
	 */
	@Column(name = "family_name_cn")
	private String familyNameCn;
   /**
    * 菜单英文名称
    */
	@Column(name = "name_us")
	private String nameUs;
   /**
    * 菜单URL
    */
	@Column(name = "url")
	private String url;
   /**
    * 权限URL
    */
	@Column(name = "auth_url")
	private String authUrl;
   /**
    * 菜单层级
    */
	@Column(name = "level")
	private Integer level;
   /**
    * 是否叶子节点
    */
	@Column(name = "leaf_flag")
	private Integer leafFlag;
   /**
    * 排序
    */
	@Column(name = "sort")
	private Integer sort;
   /**
    * 类型(1:菜单、2:按钮、3:子页、4:客户类型、5:客户tab)
    */
	@Column(name = "type")
	private String type;

	/**
	 * 客户类型
	 */
	@Column(name = "customer_type")
	private String customerType;

   /**
    * 类型(1：PC、2：小程序、3：APP、4：公众号)
    */
	@Column(name = "platform")
	private String platform;
   /**
    * 菜单图标
    */
	@Column(name = "icon")
	private String icon;
   /**
    * 功能说明
    */
	@Column(name = "description")
	private String description;
   /**
    * 备注
    */
	@Column(name = "remark")
	private String remark;
   /**
    * 状态(0：禁用，1：启用)
    */
	@Column(name = "enable_flag")
	private String enableFlag;

	/**
	 *创建人
	 */
	@Column(name = "create_by")
	private String createBy;
	/**
	 * 创建时间
	 */
	@Column(name = "create_time")
	private Date createTime;
	/**
	 * 修改人
	 */
	@Column(name = "update_by")
	private String updateBy;
	/**
	 * 修改时间
	 */
	@Column(name = "update_time")
	private Date updateTime;
	/**
	 * 删除标记，1：删除，0：未删除
	 */
	@Column(name = "del_flag")
	private String delFlag;
	/**
	 * 更新日期(8位 20190720)
	 */
	@Column(name = "update_date_str")
	private String updateDateStr;
	/**
	 * 版本
	 */
	@Column(name = "version")
	private Integer version;

	@Column(name = "create_by_no")
	private String createByNo;

	@Column(name = "update_by_no")
	private String updateByNo;

}
